%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 数学与应用数学必修课程学期安排
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\begin{tikzpicture}
%\node [circle,draw] (xq) at (0,1) {学期}; 
%\node [rectangle,draw] (kc) at (2,1) {课程(学分)}; 

\node [circle,draw] (s1) at (0,0) {1}; 
\node [circle,draw] (s2) at (0,-0.9) {2}; 
\node [circle,draw] (s3) at (0,-1.8) {3}; 
\node [circle,draw] (s4) at (0,-2.7) {4}; 
\node [circle,draw] (s5) at (0,-3.6) {5}; 
\node [circle,draw] (s6) at (0,-4.5) {6}; 
\node [circle,draw] (s7) at (0,-5.4) {7}; 
\node [circle,draw] (s8) at (0,-6.3) {8}; 

\graph {(s1) -> (s2) -> (s3) -> (s4)  -> (s5) -> (s6) -> (s7) -> (s8)};

\node [rectangle, draw] (a1) at (2,0) {数学分析一6}; 
\node [rectangle, draw] (b1) at (5,0) {高等代数一4}; 
\node [rectangle, draw] (c1) at (8,0) {解析几何2}; 
\node [rectangle, draw] (d1) at (11,0) {数据库应用2}; 

\node [rectangle, draw] (a2) at (2,-0.9) {数学分析二4}; 
\node [rectangle, draw] (b2) at (5,-0.9) {高等代数二4}; 
\node [rectangle, draw] (c2) at (8.5,-0.9) {Python程序设计基础2}; 
\node [rectangle, draw] (d2) at (11.5,-0.9) {会计学3}; 

\graph {(a1) -> (a2) };
\graph {(b1) -> (b2) };
\draw[->] (c1) |- +(0,-0.45) -| (b2);

\node [rectangle, draw] (a3) at (2,-1.8) {数学分析三4}; 
\node [rectangle, draw] (b3) at (5,-1.8) {常微分方程4}; 
\node [rectangle, draw] (c3) at (8,-1.8) {概率论3}; 
\node [rectangle, draw] (d3) at (11,-1.8) {经济学3}; 

\graph {(a2) -> (a3) };
\draw[->] (a2) |- +(0,-0.45) -| (c3);
\draw[->] (b2) |- +(0,-0.45) -| (a3);
\graph {(b2) -> (b3) };
\draw[->] (b2) |- +(0,-0.45) -| (c3);

\node [rectangle, draw] (a4) at (2,-2.7) {数学物理方程3}; 
\node [rectangle, draw] (b4) at (4.8,-2.7) {数学模型2}; 
\node [rectangle, draw] (c4) at (7.5,-2.7) {数理统计4}; 
\node [rectangle, draw] (d4) at (10,-2.7) {数值分析3}; 
\node [rectangle, draw] (e4) at (12.6,-2.7) {统计软件2}; 

%\graph {(a3) -> (b4) };
\draw[->] (a3) |- +(0,-0.45) -| (b4);
\draw[->] (a3) |- +(0,-0.45) -| (c4);
\draw[->] (a3) |- +(0,-0.45) -| (e4);
\draw[->] (b3) |- +(0,-0.45) -| (d4);
\draw[->] (c3) |- +(0,-0.45) -| (a4);

\node [rectangle, draw] (a5) at (2,-3.6) {离散数学基础3}; 
\node [rectangle, draw] (b5) at (5,-3.6) {数学建模实验3}; 
\node [rectangle, draw] (c5) at (8,-3.6) {运筹学3}; 

\graph {(a4) -> (a5) };
\draw[->] (a4) |- +(0,-0.45) -| (b5);
\draw[->] (a4) |- +(0,-0.45) -| (c5);
\draw[->] (b4) |- +(0,-0.45) -| (c5);
\draw[->] (c4) |- +(0,-0.45) -| (b5);
\draw[->] (d4) |- +(0,-0.45) -| (b5);
\draw[->] (e4) |- +(0,-0.45) -| (b5);

\node [rectangle, draw] (a6) at (2,-4.5) {数量金融实验2}; 
\node [rectangle, draw] (b6) at (6.5,-4.5) {Python语言与数据挖掘2}; 

\graph {(a5) -> (a6) };
\draw[->] (c5) |- +(0,-0.45) -| (a6);

\node [rectangle, draw] (a7) at (2,-5.4) {数学写作2}; 
\node [rectangle, draw] (b7) at (5,-5.4) {毕业实习3}; 

\graph {(a6) -> (a7) };
\draw[->] (b6) |- +(0,-0.45) -| (a7);
\draw[->] (b5) |- +(0,-0.45) -| (3.5,-4.95) -| (a7);

\node [rectangle, draw] (a8) at (2,-6.3) {毕业论文6}; 
\graph {(a7) -> (a8) };

\draw[->] (b7) |- +(0,-0.45) -| (a8);

\end{tikzpicture}

